#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//#include<math.h>
//int main()
//{
//	double a, b, c;
//	scanf("%lf%lf%lf", &a, &b, &c);
//	if (a == 0 && b == 0 && c == 0)
//	{
//		printf("Zero Equation");
//	}
//	else if (a == 0 && b == 0)
//	{
//		printf("Not An Equation");
//	}
//	else if (a == 0)
//	{
//		double root = -c / b;
//		if (fabs(root) < 0.000001)
//		{
//			root = 0.00;
//		}
//		printf("%.2f", root);
//	}
//	double zerta = b * b - 4 * a * c;
//	if (zerta == 0)
//	{
//		double root = -b / 2 * a;
//		if (fabs(root) < 0.000001)
//		{
//			root = 0.00;
//		}
//		printf("%.2f\n", root);
//	}
//	else if (zerta > 0)
//	{
//		double root1 = (-b + sqrt(zerta))/ (2 * a);
//		double root2 = (-b - sqrt(zerta)) / (2 * a);
//		if (fabs(root1) < 0.000001)
//		{
//			root1 = 0.00;
//		}
//		if (fabs(root2) < 0.000001)
//		{
//			root2 = 0.00;
//		}
//		if (root1 > root2)
//		{
//			printf("%.2f\n", root1);
//			printf("%.2f\n", root2);
//		}
//		else if (root1 < root2)
//		{
//			printf("%.2f\n", root2);
//			printf("%.2f\n", root1);
//		}
//	}
//	else if (zerta < 0)
//	{
//		double real = -b / (2 * a);
//		double imag = sqrt(-zerta) / (2 * a);
//		if (fabs(real) < 0.000001)
//		{
//			real = 0.00;
//		}
//		if (fabs(imag) < 0.000001)
//		{
//			imag = 0.00;
//		}
//		if (imag > 0)
//		{
//			printf("%.2f+%.2fi\n", real, imag);
//			printf("%.2f-%.2fi\n", real, imag);
//		}
//		else if(imag < 0)
//		{
//			printf("%.2f+%.2fi\n", real, -imag);
//			printf("%.2f-%.2fi\n", real, -imag);
//		}
//	}
//	return 0;
//}
#include<stdio.h>
#include<math.h>
int main()
{
	double a, b, c;
	scanf("%lf%lf%lf", &a, &b, &c);
	if (a == 0 && b == 0 && c == 0)
	{
		printf("Zero Equation");
	}
	else if (a == 0 && b == 0)
	{
		printf("Not An Equation");
	}
	else if (a == 0)
	{
		double root = -c / b;
		if (fabs(root) < 0.000001)
		{
			root = 0.00;
		}
		printf("%.2f", root);
	}
	double zerta = b * b - 4 * a * c;
	if (zerta == 0)
	{
		double root = -b / 2 * a;
		if (fabs(root) < 0.000001)
		{
			root = 0.00;
		}
		printf("%.2f\n", root);
	}
	else if (zerta > 0)
	{
		double root1 = (-b + sqrt(zerta)) / (2 * a);
		double root2 = (-b - sqrt(zerta)) / (2 * a);
		if (fabs(root1) < 0.000001)
		{
			root1 = 0.00;
		}
		if (fabs(root2) < 0.000001)
		{
			root2 = 0.00;
		}
		if (root1 > root2)
		{
			printf("%.2f\n", root1);
			printf("%.2f\n", root2);
		}
		else if (root1 < root2)
		{
			printf("%.2f\n", root2);
			printf("%.2f\n", root1);
		}
	}
	else if (zerta < 0)
	{
		double real = -b / (2 * a);
		double imag = sqrt(-zerta) / (2 * a);
		if (fabs(real) < 0.000001)
		{
			real = 0.00;
		}
		if (fabs(imag) < 0.000001)
		{
			imag = 0.00;
		}
		if (imag > 0)
		{
			printf("%.2f+%.2fi\n", real, imag);
			printf("%.2f-%.2fi\n", real, imag);
		}
		else if (imag < 0)
		{
			printf("%.2f+%.2fi\n", real, -imag);
			printf("%.2f-%.2fi\n", real, -imag);
		}
	}
	return 0;
}